package com.greatwqs.wmall.user.client.service;

import com.greatwqs.wmall.common.module.exception.AppException;

import java.io.FileNotFoundException;

/**
 * 默认异常传递测试
 * @author wang-qingsong
 */
public interface ExceptionClientService {

    /**
     * 消费者收到 RuntimeException
     */
    String runtimeException();

    /**
     * 消费者收到 IllegalArgumentException
     */
    String illegalArgumentException();

    /**
     * 消费者收到 AppException
     */
    String appException() throws AppException;

    /**
     * 消费者收到 RuntimeException!!
     * RuntimeException 中定义了 cause 是 AppException
     */
    String appExceptionNotThrowsDefine();

    /**
     * 消费者收到 FileNotFoundException
     */
    String fileNotFoundException() throws FileNotFoundException;
}